home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Skandinavian News 6
/
Skandinavian News - Issue 6 (1988-12)(Accession).adf
/
Quick.doc
< prev
next >
Wrap
Text File
|
1988-11-13
|
5KB
|
223 lines
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$ $$
$$ Manx Aztec C 3.6a Quick Manual $$
$$ $$
$$ by Wyzinsky the Horrible $$
$$ $$
$$ No rights reserved. $$
$$ Feel free to share and enjoy! $$
$$ (pleze ignore spelling errors!) $$
$$ $$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
Compiler: cc
Compile your program modules by
cc [options] prog.c
Compiler options
-A Does not start the assembler when compilation is done.
-B Does not pause after evry 5th error to ask wether the
compiler should continue.
-Dsymbol Defines a symbol for preprocessor.
[=value]
-Idir Searches the directory dir for #include files.
-O file Sends output to file.
-Q Generates error messages to a file called Aztec-C.err.
-S Does not print warning messages.
-T Includes C-source statements in the assembly code output
as comments. Each source statement appears before the
assembly code it generates.
-Enum Uses an exprssion table having num entries.
-Lnum Uses an local symbol table having num entries.
-Ynum Uses an case table having num entries.
-Znum Uses an literal table having num entries.
Special options for Amiga
+B Does not generate the statement public.begin.
+C Generates code that uses large code memory model.
See 'Memory Models'.
+D Generates code that uses large data memory model.
See 'Memory Models'.
+Hfile Writes symbol table to file. Compile #include files
with this option for faster compiling of your *.c
files.
+Ifile Reads precompiled symbol table from file. When you
compile a module, compiler ignores #include statements
for header files that has precompiled to file.
+L int variables and constants are 32 bits wide. Defaults
they are 16 bits wide. Remeber to use c32.lib when
linking.
+Q Puts character string constants in the data segment.
Defaults they are placed in code segment.
+Xn Extended options of the code generator, n indicates
option choise:
+X1 Removes A6 from all lists; A6 does not exist for
compiler.
+X2 Places code in the data segment.
+X3 Delays the popping of arguments until it's neccessary.
Causes problems with DB backtrace command.
+X4 Forces literal strings to be aligned on an even
boundary.
+X5 Generates in-line code for strcpy(),strcmp() and
strcmp(), or as name used is preceded as
_BUILTIN_strcopy(s1,s2);
(this feature can be used by:
#define strcpy _BUILTIN_strcpy)
Memory models
cc prog.c small code, small data
cc +C prog.c large code, small data
cc +D prog.c small code, large data
cc +C +D prog.c large code, large data
Remember to link your program with right libraries!
Default libs (c.lib/m.lib/ma.lib) are for small code,
small data memory model and 16 bit integers only.
Assembler: as
Assembler is normally invoked by compiler;
to invoke assembler yourself use command:
as [-options] prog.asm
Assembler options
+A forces the total size of code & data to be aligned
to a longword boundary instead of the default word
boundary.
-C Makes large code to default memory model. Near code and
far code directives can be used to override default
memory model.
-D Makes large data to default memory model. Near data and
far data directives can be used to override default
memory model.
-Idir Defines a dir to search include files.
-L Generates listing.
-N Does not optimize object code.
-O file Send object code to file.
-Snum Creates squeeze table to have num entries.
-V Verbose option. Generates memory usage statistics.
-ZAP Delete input file after processing. (Used by cc.)
Linker: ln
Invoke linker by:
ln [-options] prog.o [module1-n.o] [lib1-n.lib]
Linker options
-A Forces each module to be aligned on a longword
boundary, useful when you do someting with (UGH!)
BCPL pointers.
+C[cdb] Forces loading into chip memory [sections specified:
c=Code, d=Initialized Data and b=Uninitialized Data].
+F[cdb] Forces loading into fast memory [sections specified:
c=Code, d=Initialized Data and b=Uninitialized Data].
-F file Reads arguments frim file.
-G, -Q Tells the linker to generate a file for SDB, file name
is name_of_output_file.dbg
+L Tells the linker that following object modules are
really true Amiga object modules until next +L.
Linker automatically detects that a module is an
Amiga object format but does not detect if it is a
library (containing many modules).
-Lname Searches for library name.lib.
-M Disable linker warnings about symbols that override
symbols defined in library.
+O[i] Places executable code in object modules that follow
in code segment i.
-O file Writes the executable code to the file.
+SSS Scatted loading: puts each module in the own hunk.
+SS Scatted loading: joins modules until size of hunk
reached 8K.
+S Scatted loading: puts modules in each file in the own
hunk.
Default is that there is no scatted loading.
-T Generate ASCII symbol table.
-W Generate Wack-readable symbol table.
-V Be verbose